/*
package cn.whx.hrm.service.impl;

import cn.whx.hrm.domain.CourseType;
import cn.whx.hrm.mapper.CourseTypeMapper;
import cn.whx.hrm.service.ICourseTypeService;
import cn.whx.hrm.util.AjaxResult;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;



@Service
public class CourseTypeServiceImpl_bak extends ServiceImpl<CourseTypeMapper, CourseType> implements ICourseTypeService {
    @Autowired
    private CourseTypeMapper courseTypeMapper;
    @Autowired
    private RedisTemplate redisTemplate;
    @Override
    public AjaxResult treeData() {
        // List<CourseType> courseTypes =  courseTypeMapper.treeData();

        List<CourseType> courseTypes = new ArrayList<>();
        Object cache = redisTemplate.opsForValue().get("course_type_tree_data");
        if (cache !=null){//缓存中有的话
            courseTypes = (List<CourseType>) cache;//嗯转
            System.out.println("redis里面");
        }else {//没有的话从数据库里面拿
            courseTypes = threeType();
            //存入缓存
            redisTemplate.opsForValue().set("course_type_tree_data", courseTypes);
            System.out.println("数据库里面");
        }
        return AjaxResult.me().setResultObj(courseTypes);
    }

    private List<CourseType> threeType() {
        List<CourseType> list = new ArrayList<>();
        //查询出所有东西
        List<CourseType> courseTypes = courseTypeMapper.selectList(null);
        HashMap<Long, CourseType> map = new HashMap<>();
        //id和对象的关系
        courseTypes.forEach(courseType -> {
            map.put(courseType.getId(), courseType);
        });
        //找爹，遍历数据
        courseTypes.stream().forEach(son -> {
            if (son.getPid()==0){ //找到最顶级 pid = 0
                //添加到里面去
                list.add(son);
            }else {//其他级别  pid要是和他id相等 就找到爹了
                CourseType courseType = map.get(son.getId());
                //添加到子属性里去
                courseType.getChildren().add(son);
            }
        });
        return  list;
    }
}
*/
